/**
 * 371. 两整数之和
 */
class Solution7 {
    public int getSum(int a, int b) {
        // a^b是无进位相加
        // 通过(a&b<<1)找到进位（后面就重复这两步骤，直到进位为0，就是最终结果）

        while(b != 0) {
            int A = a ^ b;
            int B = (a & b) << 1;
            a = A; b = B;
        }

        return a ^ b;
    }
}